package com.turing.post.organization.util;
import java.math.BigInteger;
import java.util.List;

import javax.ejb.Local;
import javax.ejb.Remote;

import com.turing.post.util.PCPSApplicationException;
import com.turing.post.util.PCPSWebInput;

/**
 * 凭证调整单明细接口
 * 
 * @author wzd
 * @2013-03-13
 */
@Remote
@Local
public interface VoucherAdjustOrderDetailDao {

	
	/**
	 * 根据条件查询凭证调整单详细列表 
	 * @param voucherAdjustOrderId 
	 *            调整单ID                          
	 * @param page 
	 *            页码
	 * @return 凭证调整单详细列表
	 */
	public List<VoucherAdjustOrderDetail> getVoucherAdjustOrderDetailList(PCPSWebInput webInput,BigInteger voucherAdjustOrderId,Integer page);
	/**
	 * 根据条件查询凭证调整单详细总数 
	 * @param voucherAdjustOrderId 
	 *            调整单ID       
	 * @return 凭证调整单详细录数
	 */
	public BigInteger getVoucherAdjustOrderDetailListTotal(PCPSWebInput webInput,BigInteger voucherAdjustOrderId);
	/**
	 * 新增凭证调整单详细
	 * 
	 * @param  VoucherAdjustOrderDetail
	 *                      凭证调整单详细
	 * @throws PCPSApplicationException
	 */
	public void insertVoucherAdjustOrderDetail(VoucherAdjustOrderDetail voucherAdjustOrderDetail) throws PCPSApplicationException;		
	/**
	 * 根据条件查询凭证调整单详细列表---不分页
	 * @param voucherAdjustOrderId 
	 *            调整单ID    
	 * @return 凭证调整单详细列表
	 */
	public List<VoucherAdjustOrderDetail> getVoucherAdjustOrderDetailListNoPage(PCPSWebInput webInput,BigInteger voucherAdjustOrderId);
	/**
	 * 根据凭证序号验证调整单是否，本号段已有待审核的
	 */
	public int IsSeqNo(String issueCompanyNo,String startVoucherNo,String endVoucherNo,BigInteger voucherId,String branchNo);
}
